package com.autoerp.dao.jdbc.servico;

import java.sql.Connection;
import java.util.List;

import org.mentabean.BeanSession;

import com.autoerp.dao.servico.ServicoPrestadoDAO;
import com.autoerp.model.servico.DemandaEntity;
import com.autoerp.model.servico.ServicoPrestadoEntity;

/**
 * 
 * Classe ServicoPrestadoDAOJdbc, implementação da interface ServicoPrestadoDAO.
 */
public class ServicoPrestadoDAOJdbc implements ServicoPrestadoDAO {
	/** The session. */
	private BeanSession session;

	/** The conn. */
	private Connection conn;

	/**
	 * Instantiates a new peça dao jdbc.
	 * 
	 * @param session
	 *            the session
	 */
	public ServicoPrestadoDAOJdbc(BeanSession session) {
		this.session = session;
		this.conn = session.getConnection();
	}

	/**
	 * Excluir servico prestado atraves do seu identificador.
	 * 
	 * @param id_servico_prestado
	 *            the id_servico_prestado
	 */
	public void deletar(Integer id_servico_prestado) {
		// TODO Auto-generated method stub
		
		// FALTA IMPLEMENTAR
	}

	/**
	 * Localizar servico prestado atraves do seu identificador.
	 * 
	 * @param id_servico_prestado
	 *            the id_servico_prestado
	 * @return instancia do servico
	 */
	public ServicoPrestadoEntity buscarPorId(Integer id_servico_prestado) {
		// Cria instancia do servico prestado
		ServicoPrestadoEntity servicoPrestado = new ServicoPrestadoEntity();
		// Seta identificador do servico prestado
		servicoPrestado.setId_servico_prestado(id_servico_prestado);
		

		// Busca e retorna servico prestado
		if (session.load(servicoPrestado)) {
			return servicoPrestado;
		}

		// Retorna null se a demanda não for encontrada
		return null;
	}

	@Override
	public List<ServicoPrestadoEntity> buscarServicosPrestados(
			ServicoPrestadoEntity servicosPrestados) {
		// / Retorna lista de servicos prestados encontrados.
				return session.loadList(servicosPrestados);
	}

	@Override
	public void salvar(ServicoPrestadoEntity servicoPrestado) {
		// Salva servico prestado no banco
				session.insert(servicoPrestado);

	}

}
